package com.app.brilliant.game.service;

import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.Map;

public interface WxPayService {
    /**
     * 生成原生支付二维码
     * @param orderId 订单ID
     * @param amount 金额(单位：分)
     * @param description 商品描述
     * @return 支付二维码URL
     * @throws Exception 支付异常
     */
    String generateNativePayQrCode(String orderId, BigDecimal amount, String description) throws Exception;

    /**
     * 解析微信支付回调请求
     * @param request HTTP请求
     * @return 参数Map
     */
    Map<String, String> parseRequest(HttpServletRequest request);

    /**
     * 验证微信支付签名
     * @param params 回调参数
     * @return 验证结果
     */
    boolean verifySign(Map<String, String> params);
}